package lesson09;

import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;

public class Test01 {
    public static void main(String[] args) {
        // System系统类
        // 获取当前时间（毫秒数）
        long start = System.currentTimeMillis();
//        for(int i = 0;i < 100000;i++){
//            System.out.println(i);
//        }
        long end = System.currentTimeMillis();
        System.out.println("耗时：" + (end - start));
        System.out.println("获取当前属性："+System.getProperties());
        System.out.println("获取当前系统名称：" + System.getProperty("os.name"));

        // Runtim类
        Runtime runtime = Runtime.getRuntime();
        System.out.println("处理器数量：" + runtime.availableProcessors());
        System.out.println("内存总数：" + runtime.totalMemory());

        // 日期类
        // Date类有很多方法被弃用
        // 目前比较常用的日期类：LocalDate、LocalDateTime

        // 获取当前日期的方法
        LocalDate date = LocalDate.now();
        System.out.println(date);
        System.out.println(date.getYear());
        System.out.println(date.getMonthValue());
        System.out.println(date.getDayOfMonth());
        System.out.println(date.getDayOfWeek().getValue());

        // 获取指定日期
        LocalDate date1 = LocalDate.of(2021,7,24);
        System.out.println(date1.getDayOfWeek().getValue());

        LocalDate date2 = LocalDate.parse("2020-05-08");
        System.out.println(date2.getDayOfWeek().getValue());

        // 日期格式化类DateTimeFormatter
        DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy年M月d日 E");
        System.out.println(date.format(formatter));

        LocalDateTime dateTime = LocalDateTime.now();
        DateTimeFormatter formatter1 = DateTimeFormatter.ofPattern("yyyy年M月d日 E HH时mm分ss秒");
        System.out.println(dateTime.format(formatter1));

        // 数学运算类Math
        // 向下取整（返回double类型）
        System.out.println(Math.floor(15.9));
        // 向上取整（返回double类型）
        System.out.println(Math.ceil(15.1));
        // 四舍五入（返回长整型）
        System.out.println(Math.round(15.6));
    }
}
